#ifndef MENU_TREE_LIST_H
#define MENU_TREE_LIST_H

#include <QTreeWidget>

class MenuTreeList : public QTreeWidget {
    Q_OBJECT

public: 
    explicit MenuTreeList(QWidget *parent = nullptr);
    
    QTreeWidgetItem* addMenuItem(const QString& text, const QIcon& icon, QTreeWidgetItem* parent = nullptr);
    
    // 递归获取 QTreeWidgetItem 的路径
    QString getItemPath(const QTreeWidgetItem *item);
signals:
    void itemClicked(const QTreeWidgetItem* item);

private slots:
    void onItemClicked(QTreeWidgetItem* item, int column);

private:
    void initBindingSignalSlot();                  // 初始化信号与槽的绑定
    void loadStyleSheet();                         // 加载样式文件

};



#endif